import request from '../../../../../public/js/common/api/api.js';

const MasterDataUrl = Utils.CurDomain.MasterDataUrl;
const BaseCfgUrl = Utils.CurDomain.BaseCfgUrl;
const AuthUrl = Utils.CurDomain.AuthUrl;
const SysPlfUrl = Utils.CurDomain.SysPlfUrl;
const ShareUrl = Utils.CurDomain.ShareUrl;
const CBSUrl = Utils.CurDomain.CBSUrl;
const SAPSynUrl = Utils.CurDomain.SAPSynUrl;

const _ajaxOptions = {
    contentType: 'application/json',
    dataType: 'text',
    async: true,
    dataFilter(data, type) {
        return data
    }
}

/**
* 饲喂记录 接口
*/
export default class FeedingApi {
    // 根据批次获取生产版本
    static queryBreedbatchs(param) {
        return request.post(`${Utils.CurDomain.BaseCfgUrl}/breedbatchs/cur`, param, true);
    }
    /**
    * 获取SAP 所有物料
    * @returns
    */
    static postMaterial() {
        return request.get(`${MasterDataUrl}/yymaterials/q?mgroupid=SAP-1&pagesize=100000&pageindex=0`)
    }

    // 获取饲喂标准
    static getfeedStandards(Dyas, Id) {
        return request.get(`${BaseCfgUrl}/feedstandards/d/${Dyas}/${Id}`);
    }

    // 获取供应商
    static getSupplier() {
        return `${MasterDataUrl}/yysuppliers/by/q`
    }

    // 获取物料
    static getMaster() {
        return `${MasterDataUrl}/yymaterials/q`
    }


    // 获取供应商详情
    static querySupplierOrg(id) {
        return request.get(`${MasterDataUrl}/yysuppliers/${id}`);
    }

    // 获取养殖批次
    static getBreedbatchs() {
        return `${BaseCfgUrl}/breedbatchs/rlist`
    }

    /**
    * 获取用户拥有的组织信息
    * @param data
    * @returns
    */
    static getBaseOrgunitList() {
        return request.get(`${AuthUrl}/accounts/orgs`);
    }

    /**
     * 获取服务部信息
     * @param data
     * @returns
     */
    static queryComDepList(upoid, aotype) {
        return request.get(`${SysPlfUrl}/yyorgunits/by/q?upoid=${upoid}&aotype=${aotype}`);
    }

    /**
    * 饲喂记录DT
    * @param data
    * @returns
    */
    static postFeedingList(data) {
        return request.post(`${ShareUrl}/feedingbills/list`, data);
    }

    /**
    * 饲喂记录新增
    * @param data
    * @returns
    */
    static postAddFeeding(data) {
        return request.post(`${ShareUrl}/feedingbills`, data, undefined, _ajaxOptions);
    }


    /**
    * 饲喂记录详情
    * @param id
    * @returns
    */
    static postFeedingInfo(id) {
        return request.get(`${ShareUrl}/feedingbills/${id}`);
    }

    /**
     * 饲喂记录删除
     * @param id
     * @returns
     */
    static delFeeding(id) {
        return request.delete(`${ShareUrl}/feedingbills/${id}`);
    }


    /**
    * 饲喂记录编辑
    * @param data
    * @returns
    */
    static putUpFeeding(id, data) {
        return request.put(`${ShareUrl}/feedingbills/${id}`, data, undefined, _ajaxOptions);
    }
    /**
    * 提交 饲喂记录
    * @param ids
    * @returns
    */
    static putSubmit(ids) {
        return request.put(`${ShareUrl}/feedingbills/submit`, { ids: [ids] });
    }

    /**
     * 反提交 饲喂记录
     * @param ids
     * @returns
     */
    static putResubmit(ids) {
        return request.put(`${ShareUrl}/feedingbills/resubmit`, { ids: [ids] });
    }
    /**
     * 审核 饲喂记录
     * @param ids
     * @returns
     */
    static putAudit(ids) {
        return request.put(`${ShareUrl}/feedingbills/audit`, { ids: [ids] });
    }
    /**
     * 反审核 饲喂记录
     * @param ids
     * @returns
     */
    static putReaudit(ids) {
        return request.put(`${ShareUrl}/feedingbills/reaudit`, { ids: [ids] });
    }

    /**
     * 根据批次查询存栏数
     * @param ids
     * @returns
     */
    static getBreedbatchsNum(id, pigType) {
        return request.get(`${BaseCfgUrl}/breedbatchs/num/${id}/${pigType}`);
    }
    /**
    * 根据业务日期査询批次存栏信息
    * @param ids
    * @returns
    */
    static postBreedbatchsNum(data) {
        return request.post(`${BaseCfgUrl}/breedbatchs/pigtypenum`, data, true);
    }
    /**
    * 获取库存地点
    * @returns
    */
    static getmaterialStock(data) {
        return request.post(`${CBSUrl}/materialreqbills/w/code`, data, true);
    }
    /**
    * 获取库存地点
    * @returns
    */
    static getStockNum(data) {
        return request.post(`${SAPSynUrl}/materialreqbills/w/stock`, data, true);
    }
}